package ${packageName};

import java.util.List;

import ${EntityClass};

/**
 * <p>ClassName: I${UpperKey}Service</p>
 * <p>Description: ${ZhKey}Service接口</p>
 * <p>Author: ${author}</p>
 * <p>Date: ${createDate}</p>
 */
public interface I${UpperKey}Service {
    /**
     * <p>Description: 新增${ZhKey}</p>
     * @param ${key} ${ZhKey}对象
     * @return 受影响的记录数
     */
    int add${UpperKey}(${UpperKey} ${key});
    
    /**
     * <p>Description: 更新${ZhKey}</p>
     * @param ${key} ${ZhKey}对象
     * @return 受影响的记录数
     */
    int update${UpperKey}(${UpperKey} ${key});
    
    /**
     * <p>Description: 删除${ZhKey}</p>
     * @param ${key} ${ZhKey}对象
     * @return 受影响的记录数
     */
    int delete${UpperKey}(${UpperKey} ${key});
    
    /**
     * <p>Description: 根据Code查询${ZhKey}对象</p>
     * @param code ${ZhKey} code
     * @return ${ZhKey}对象
     */
    ${UpperKey} get${UpperKey}ByCode(String code);
    
   
    
   
    /**
     * 得到${ZhKey}记录数
     * @param ${key} 查询条件
     * @return 记录总条数
     */
    long get${UpperKey}Count(${UpperKey} ${key});

    /**
     *  查询${ZhKey}记录明细，一次性最多返回2000行${ZhKey}数据
     * @param ${key}  查询条件
     * @param firstRow  首行
     * @param lastRow  末行
     * @return  符合条件的记录列表
     */
    List<${UpperKey}> query${UpperKey}s(${UpperKey} ${key} ,int firstRow, int lastRow);
}
